.mouse-warp {
    width: 200px;
    height: 200px;
    background: rgb(109, 47, 255);
    color: white;
    position: relative;
    overflow: hidden;

    .content {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
    }

    .cover {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10;
        opacity: 0;
    }

    /* 进入动画 */
    .cover.topEnter {
        opacity: 1;
        animation: topEnter .3s ease both 1;
    }

    .cover.rightEnter {
        opacity: 1;
        animation: rightEnter .3s ease both 1;
    }

    .cover.bottomEnter {
        opacity: 1;
        animation: bottomEnter .3s ease both 1;
    }

    .cover.leftEnter {
        opacity: 1;
        animation: leftEnter .3s ease both 1;
    }

    /* 移出动画 */
    .cover.topLeave {
        opacity: 1;
        animation: topLeave .3s ease both 1;
    }

    .cover.rightLeave {
        opacity: 1;
        animation: rightLeave .3s ease both 1;
    }

    .cover.bottomLeave {
        opacity: 1;
        animation: bottomLeave .3s ease both 1;
    }

    .cover.leftLeave {
        opacity: 1;
        animation: leftLeave .3s ease both 1;
    }

    /* 进入动画 */
    @keyframes topEnter {
        0% {
            transform: translateY(-100%);
        }

        100% {
            transform: translateY(0);
        }
    }

    @keyframes rightEnter {
        0% {
            transform: translateX(100%);
        }

        100% {
            transform: translateX(0);
        }
    }

    @keyframes bottomEnter {
        0% {
            transform: translateY(100%);
        }

        100% {
            transform: translateY(0);
        }
    }

    @keyframes leftEnter {
        0% {
            transform: translateX(-100%);
        }

        100% {
            transform: translateX(0);
        }
    }

    /* 移出动画 */
    @keyframes topLeave {
        0% {
            transform: translateY(0);
        }

        100% {
            transform: translateY(-100%);
        }
    }

    @keyframes rightLeave {
        0% {
            transform: translateX(0);
        }

        100% {
            transform: translateX(100%);
        }
    }

    @keyframes bottomLeave {
        0% {
            transform: translateY(0);
        }

        100% {
            transform: translateY(100%);
        }
    }

    @keyframes leftLeave {
        0% {
            transform: translateX(0);
        }

        100% {
            transform: translateX(-100%);
        }
    }
}